home *** CD-ROM | disk | FTP | other *** search
- (c) Copyright 1991 Commodore-Amiga, Inc. All rights reserved.
- The information contained herein is subject to change without notice,
- and is provided "as is" without warranty of any kind, either expressed
- or implied. The entire risk as to the use of this information is
- assumed by the user.
-
-
- Using the Amiga A3000UX as a NFS File Server
-
- By David Miller - Unix Technical Support Specialist, CATS
-
-
-
- You've just added an A3000UX to your ethernet and you can rcp and ftp files
- between UNIX and AmigaDOS using the AS225 TCP/IP software. Great! But what
- about the AS225's Network File System (NFS) client software? Under AmigaDOS,
- the NFS software lets your Amiga mount the drives of a NFS server as normal
- DOS volumes, but how do you set up a server?
-
- NFS allows one machine to share files with other machines connected to a
- network. NFS lets multiple machines access the same files, so only one copy
- of the data is necessary. A client machine (a client is any machine that can
- mount a shared directory) can free some of its disk space by moving common
- programs to the server's disk (a server is any machine that shares a part of
- its disk with other machines).
-
- There are however limitations when sharing files between machines with
- different operating systems. For example;
-
- o Filenames - UNIX S5 filesystem does not support filenames longer than 14
- characters. If you copy files from AmigaDOS to UNIX, make sure that they are
- unique in the first 14 characters. And don't forget about the ".info" files!
- If you copy a file that has a ".info" file associated with it, be sure that
- the name preceding the ".info" does not exceed 9 characters.
- o Permissions - UNIX files have permissions for read, write, and execute.
- There is no delete permission; if you have write access to the directory, you
- can delete any file it contains. Script and archive bits are not supported
- either, so setting the script or archive bits, or clearing the delete bit
- will not work.
- o Filenotes - UNIX does not support filenotes. If you copy a file from an
- AmigaDOS filesystem to a UNIX filesystem, any file notes will be lost.
- Likewise, you cannot add a comment to a file on a UNIX filesystem. You will
- not receive any error indication, but the operation will have no effect.
-
- The following notes will walk you step-by-step through the process of
- configuring and administering NFS on the A3000UX. If you have used NFS
- before with BSD, Sun/OS, Ultrix, or any other operating system, you should at
- least skim over these notes, because the implementation is different under
- UNIX SVR4.
-
- To keep this article brief, I'm making the following assumptions:
-
- o You know how to use one of the editors shipped with Amiga UNIX.
- o You know how to log in as root or how to su to root.
-
- If you don't, read the Learning Amiga UNIX and Using Amiga UNIX manuals which
- come with the A3000UX.
-
- The five examples illustrate how to do some simple file sharing with NFS.
- Using the concepts discussed in these examples you will be able to select the
- options necessary to share files while maintaining system security and
- integrity. But, first, you need to start the networking software on the
- A3000UX, if it's not already running. To do this, type the following:
-
- # init 3
-
- This changes the operating to ``run-level'' 3, the networking run-level.
- Other run-levels include:
-
- S - single user maintenance mode
- 0 - system power off
- 1 - single user mode
- 2 - multiuser mode w/o networking
- 3 - multiuser mode w/ networking
- 4 - user defined
- 5 - system reboot
- 6 - system reboot
-
- To find out what your machine's current run-level is, type:
-
- # who -r
-
- The output will look something like this:
-
- run-level 3 Jun 18 18:40 3 0 S
-
- Here's what all of that means:
-
- run-level 3 Jun 18 18:40 3 0 S
-
-
- This is the
- current state
- of your machine
-
- This is when the current
- run-level was entered
-
- This is the current run-level
-
- This is the number of times
- your machine has been in this
- run-level before.
-
- This is the previous run-level
-
-
- This is the host table (/etc/inet/hosts on Amiga UNIX and INET:db/hosts on
- AmigaDOS) that I'll be using for the examples:
-
- #
- # TCP/IP HOST TABLE
- #
- #
- 127.0.0.1 localhost loghost loopback me
- #
- #
- # Widget works engineering network
- #
- #
- # IP Number Name Nickname Comment
- #
- 192.9.120.1 Hydrogen H # A3000UX - in comp center
- 192.9.120.2 Helium He # A2000 - in room 316
- 192.9.120.3 Lithium Li # A2500 - in room 321
- 192.9.120.4 Beryllium Be # A3000 - in room 320
- 192.9.120.5 Boron B # A2500 - in room 119
- 192.9.120.6 Carbon C # A2000 - in room 119
- 192.9.120.7 Nitrogen N # A2000 - in room 204
- 192.9.120.8 Oxygen O # A3000 - in room 220
- 192.9.120.9 Fluorine F # A2500 - in room 132
- 192.9.120.10 Neon Ne # A3000 - in room 307
-
-
- The host table contains a list of IP addresses with node names for each of
- those addresses. The machine uses this list to find other nodes by their
- name, rather than their numeric IP address.
-
-
- Example 1
-
- Hydrogen has a directory called /home/scratch which is for temporary storage.
- Everyone should be able to read and write in this directory. To share this
- with the rest of the net, the administrator of Hydrogen would type:
-
- share -F nfs -o rw /home/scratch
-
- where:
-
- share is the command to share files between hosts.
- -F nfs tells the program share to use the NFS filesystem.
- -o rw tells the program share to allow all systems both read and
- write access to the shared files. This is the default if you
- don't supply any options. I've just included it here for
- completeness.
- /home/scratch is the directory to be shared.
-
-
- Example 2
-
- Hydrogen also has a large disk attached as /storage. To allow other hosts to
- use this as extra disk space type the following:
-
- share -F nfs -o rw=Helium /storage/Helium
- share -F nfs -o rw=Lithium /storage/Lithium
- ...
- share -F nfs -o rw=Ne /storage/Neon
-
- where:
-
- -o rw=name tells share to allow <name> to mount this resource and to
- deny access to everyone else.
-
-
- This establishes private storage areas for each host. This way all of the
- hosts can share the disk without having their files readable by everyone on
- the network.
-
- Note the use of the nickname Ne for the host Neon. Nicknames must be
- explicitly entered in the host table and may be used interchangeably with the
- full name of the host.
-
-
-
-
- Example 3
-
- A group of hosts on the first floor of your building are all being used on
- one big project, so they need a common work area to store files. The
- administrator could create a work area in /storage called, for example,
- ff-project, for first-floor-project, then give the hosts on the first floor
- access to this work area by typing:
-
- share -F nfs -o rw=Boron:Carbon:Fluorine /storage/ff-project
-
- where:
-
- -o rw=name[:name]...
-
- allows read and write access to the hosts that are listed and denies access
- to everyone else and
-
- /storage/ff-project
-
- is the name of the directory to share.
-
-
- Example 4
-
- Hydrogen has a directory called /home/public which is full of useful Amiga
- tools. To share these with the rest of the net, the administrator of
- Hydrogen would type:
-
- share -F nfs -o ro /home/public
-
- where:
-
- -o ro
-
- tells share to make the shared filesystem readable to all hosts and writable
- by no one. The ``ro'' stands for ``read-only'' and
-
- /home/public
-
- is the name of the directory to share.
-
-
- The files are shared read-only for two reasons. The first is that it
- prevents temporary files from being created in the shared partition. Also it
- prevents accidental or malicious removal of shared files.
-
-
- Example 5
-
- Now, coincidentally, Hydrogen also has a directory called /home/private which
- is full of special tools used only by the development staff on the 3rd floor.
- To share these exclusively with the hosts on the third floor, the
- administrator of Hydrogen would type:
-
- share -F nfs -o ro=He:Li:Be:Ne /home/private
-
- where:
-
- -o ro=name[:name]...
-
- tells the share program to give the listed hosts read access to the shared
- files. All other hosts will be denied access to the shared files (Note the
- use of nicknames) and
-
- /home/private
-
- is the name of the shared filesystem.
-
- These options may be combined to allow different types of access. For
- example:
-
- -o rw=Helium:Neon,ro
-
- Everyone can read shared files, but only Helium and Neon have write access.
-
-
- -o rw,ro=Fluorine
-
- Everyone except Fluorine may read and write files. Fluorine may only read
- files.
-
- -o rw=C:O,ro=N
-
- Carbon and Oxygen have read and write access, Nitrogen has read access, and
- the others have no access.
-
- To summarize:
-
- -o ro Gives everyone read-only access to the shared files
- -o rw Gives everyone read/write access
- -o ro=... Gives read-only access to the listed hosts
- -o rw=... Gives read/write access to the listed hosts
-
-
- If a host appears in both a rw= and a ro= list, the host will be given read
- and write access. The ordering of the options does not matter.
-
- Since you probably want these directories to be shared automatically every
- time you start Amiga UNIX, you need to perform the following steps:
-
-
- 1. Edit the file /etc/inittab and change the line:
-
- is:2:initdefault
-
- to
-
- is:3:initdefault
-
- This will make your machine go directly to run-level 3 when you boot the UNIX
- Operating System.
-
-
- 2. Edit the file /etc/dfs/dfstab, and enter one line for each directory
- to be shared. For Example 1 above, this would be the line:
-
- share -F nfs -o ro /home/public
-
-
-
-
-
-
- So, the complete dfstab for the 5 examples given above would look something
- like this:
-
-
- #
- # For Example 1
- #
- share -F nfs -o rw /home/scratch
-
- #
- # For Example 2
- #
- share -F nfs -o rw=Hydrogen /storage/Hydrogen
- share -F nfs -o rw=Helium /storage/Helium
- share -F nfs -o rw=Lithium /storage/Lithium
- share -F nfs -o rw=Beryllium /storage/Beryllium
- share -F nfs -o rw=Boron /storage/Boron
- share -F nfs -o rw=Carbon /storage/Carbon
- share -F nfs -o rw=Nitrogen /storage/Nitrogen
- share -F nfs -o rw=Oxygen /storage/Oxygen
- share -F nfs -o rw=Fluorine /storage/Fluorine
- share -F nfs -o rw=Neon /storage/Neon
-
- #
- # For Example 3
- #
- share -F nfs -o rw=Boron:Carbon:Fluorine /storage/ff-project
-
- #
- # For Example 4
- #
- share -F nfs -o ro /home/public
-
- #
- # For Example 5
- #
- share -F nfs -o ro=He:Li:Be:Ne /home/private
-
-
-
- 3. Run the command:
-
- shareall -F nfs
-
- which will share all of the NFS filesystems, and the command:
-
- unshareall -F nfs
-
- which will make the NFS filesystems unavailable.
-
-
- For those interested in more information on UNIX SVR4 networking, either as a
- user or an administrator, UNIX System V Release 4 - Network User's and
- Administrator's Guide, published by Prentice Hall is an excellent starting
- place.
-
- If you have any suggestions for the new Amiga UNIX section of Amiga Mail,
- please send it to me either via email:
-
- davidm@cbmvax.commodore.com
- or
- ...!{rutgers,uunet}!cbmvax!davidm
-
- or US Mail:
-
- ATTN: David Miller
- Commodore Applications and Technical Support
- Commodore Business Machines, Inc.
- 1200 Wilson Drive
- West Chester, PA 19380
-
- or FAX:
-
- David Miller
- Commodore Business Machines
- +1 215 431 9156
-
- or BIX:
- david.miller
-
- v